package cn.lili.modules.promotion.entity.dos;

import cn.lili.modules.system.entity.dos.Logistics;
import cn.lili.mybatis.model.BaseStandardEntity;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.hibernate.validator.constraints.Length;
import org.springframework.format.annotation.DateTimeFormat;

import javax.validation.constraints.NotNull;
import javax.validation.constraints.Size;
import java.io.Serializable;
import java.util.Date;

/**
* 中奖记录表
* @TableName li_box_winning_record
*/
@EqualsAndHashCode(callSuper = true)
@TableName(value ="li_box_winning_record")
@Data
public class BoxWinningRecord  extends BaseStandardEntity implements Serializable {

    /**
    * 用户ID
    */
    @ApiModelProperty("用户ID")
    private String userId;
    /**
    * 用户名
    */
    @ApiModelProperty("用户名")
    private String username;
    /**
    * 盲盒名称
    */
    @ApiModelProperty("盲盒名称")
    private String mhName;
    /**
    * 盲盒ID
    */
    @ApiModelProperty("盲盒ID")
    private String mhId;
    /**
    * 中奖状态1正常，2回收
    */
    @ApiModelProperty("中奖状态1正常，2回收")
    private Integer winningRecordStatus;
    /**
    * 奖券号码
    */
    @ApiModelProperty("奖券号码")
    private String lotteryTicketNo;
    /**
    * 奖券ID
    */
    @ApiModelProperty("奖券ID")
    private String lotteryTicketId;
    /**
     * 开奖方式
     */
    private Integer lotteryMethod;
    /**
    * 中奖商品
    */
    @ApiModelProperty("中奖商品")
    private String goodsName;
    /**
     * 中奖图片
     */
    private String goodsImage;
    /**
    * 中奖商品ID
    */
    @ApiModelProperty("中奖商品ID")
    private String goodsId;
    /**
    * 下单时间
    */
    @ApiModelProperty("下单时间")
    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date orderTime;
    /**
    * 开奖时间
    */
    @ApiModelProperty("开奖时间")
    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date drawingTime;
    /**
    * 回收时间
    */
    @ApiModelProperty("回收时间")
    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date recycleTime;
    /**
    * 回收原因
    */
    @ApiModelProperty("回收原因")
    private String recycleRemark;
    /**
     * 物流单号
     */
    private String logisticsTrackingNumber;
    /**
     * 地址id，逗号分隔
     */
    String consigneeAddressIdPath;
    /**
     * 地址名，逗号分隔
     */
    String consigneeAddressPath;
    /**
     * 详细地址
     */
    String consigneeDetail;
    /**
     * 联系人手机号
     */
    String consigneeMobile;
    /**
     * 联系人名称
     */
    String consigneeName;
    /**
     * 分享短链接
     */
    String shareShortLink;
    /**
     * 是否分享:0未分享，1已分享
     */
    Integer shareOrNot;
}
